Force sensing using capacitive touch surfaces

ABSTRACT

In one general aspect, a method can include identifying contact with a surface of a touch-sensitive input device, identifying a location of the contact on the surface of the touch-sensitive input device, and calculating a change in a mutual capacitance between a first electrode and a second electrode included in a sensor module disposed below the surface of the touch-sensitive input device. The first electrode can be adjacent to the second electrode. The first electrode and the second electrode can be located approximate to the identified location of the contact on the surface of the touch-sensitive input device. The method can include estimating a contact-coupled capacitance based on the calculated change in a mutual capacitance between the first electrode and the second electrode, and calculating a force applied to the surface of the touch-sensitive input device at the identified location.

TECHNICAL FIELD

This document relates, generally, to computing devices that includetouch-sensitive input devices.

BACKGROUND

Computing devices can provide a user with multiple ways to control theoperations of and to input data to a computing device. A computingdevice can include, for example, a touchscreen display device, akeyboard, a mouse, a trackpad, a touchpad, a pointing stick, one or moremouse buttons, a trackball, a joystick, and other types of inputdevices. A user of the computing device can interact with one or more ofthese input devices when providing input to and/or otherwise controllingthe operation of an application running on the computing device. Forexample, the user can interact with the computing device by makingdirect contact with (e.g., touching with one or more fingers, touchingwith a stylus) the touchscreen display device.

A touchpad, which may also be referred to as a trackpad, can be includedin a computing device and can be used as a pointing device to facilitateuser interaction with the computing device. For example, a user caninteract with the touchpad by making direct contact with the touchpad(e.g., touching with one or more fingers, touching with a stylus). Insome cases, the touchpad can be used in place of or in addition to amouse to maneuver a cursor on a display device included in the computingdevice, or to trigger one or more functions of the computing device.

SUMMARY

In one general aspect, a method can include identifying, by a computingdevice, contact with a surface of a touch-sensitive input device,identifying, by the computing device, a location of the contact on thesurface of the touch-sensitive input device, calculating a change in amutual capacitance between a first electrode and a second electrodeincluded in a sensor module disposed below the surface of thetouch-sensitive input device, the first electrode being adjacent to thesecond electrode, the first electrode and the second electrode locatedapproximate to the identified location of the contact on the surface ofthe touch-sensitive input device, estimating a contact-coupledcapacitance based on the calculated change in a mutual capacitancebetween the first electrode and the second electrode, and calculating aforce applied to the surface of the touch-sensitive input device at theidentified location based on a change in self-capacitance of the firstelectrode and the second electrode and based on the estimatedcontact-coupled capacitance.

Implementations can include one or more of the following features, aloneor in combination with one or more other features. For example, themethod can further include calculating a change in a mutual capacitancebetween a third electrode and the second electrode included in thesensor module, the third electrode being adjacent to the secondelectrode and located closer to the identified location of the contacton the surface of the touch-sensitive input device than the firstelectrode. Estimating a contact-coupled capacitance can be further basedon the calculated change in a mutual capacitance between the thirdelectrode and the second electrode. Calculating the applied force can befurther based on a change in self-capacitance of the third electrode.The touch-sensitive input device can be a touchpad. The touch-sensitiveinput device can be a touchscreen. The surface of the touch-sensitiveinput device can be a surface of a cover glass. The method can furtherinclude providing the calculated applied force to an applicationexecuting on the computing device. The method can further includecontrolling a function of the application based on a value of thecalculated applied force. The identified contact with the surface of thetouch-sensitive input device can be provided by a finger of a user ofthe computing device contacting the surface of the touch-sensitive inputdevice at the identified location. The identified contact with thesurface of the touch-sensitive input device can be provided by a styluscontacting the surface of the touch-sensitive input device at theidentified location.

In another general aspect, a touch-sensitive input device can include aglass-plus-sensor module. The glass-plus-sensor module can include acover glass including a top surface and a bottom surface, and at leasttwo electrodes attached to the bottom surface of the cover glass. The atleast two electrodes can have an associated self-capacitance. Thetouch-sensitive input device can include an optically clear adhesivelayer (OCA) layer, a display device having a top surface and a bottomsurface, and a ground plane attached to the bottom surface of thedisplay device. The OCA layer can attach the bottom surface of the coverglass to the top surface of the display device. The glass-plus-sensormodule can bend towards the display device at a point of contact of aconductive element with the top surface of the cover glass, the bendingchanging, for each of the at least two electrodes, the self-capacitanceassociated with the electrode, and a calculation of a force applied bythe contact of the conductive element with the top surface of the coverglass being based on the change in self-capacitance for each electrode.

Implementations can include one or more of the following features, aloneor in combination with one or more other features. For example, the OCAlayer can have a thickness. The calculation of a force applied by thecontact of the conductive element with the top surface of the coverglass can be further based on the thickness of the OCA layer. Theself-capacitance associated with the electrode can be a capacitance asmeasured between the electrode and the ground plane. The at least twoelectrodes can be adjacent to one another. The calculation of a forceapplied by the contact of the conductive element with the top surface ofthe cover glass can be further based on a mutual capacitance between theat least two electrodes. The conductive element can be one of a fingerof a user and a stylist.

In yet another general aspect, a computing device can include at leastone controller, and a touch-sensitive input device configured tofacilitate interaction by a user with a graphical user interface (GUI).The touch-sensitive input device can include a glass-plus-sensor moduleincluding a cover glass including a top surface and a bottom surface,and at least two electrodes attached to the bottom surface of the coverglass, the at least two electrodes having an associatedself-capacitance. The touch-sensitive input device can further include adisplay device having a top surface and a bottom surface, the computingdevice being configured to render the GUI on the display device, anoptically clear adhesive layer (OCA) layer attaching the bottom surfaceof the cover glass to the top surface of the display device, and aground plane attached to the bottom surface of the display device. Theat least one controller and the touch-sensitive input device can becollectively configured to detect contact of a conductive element withthe top surface of the cover glass, and based on the detected contact,determine, for each of the at least two electrodes, a self-capacitanceassociated with the electrode, and calculate a force applied by thecontact of the conductive element with the top surface of the coverglass based on the determined self-capacitance associated with each ofthe at least two electrodes.

Implementations can include one or more of the following features, aloneor in combination with one or more other features. For example, the atleast one controller can be configured to execute an application on thecomputing device, and provide the calculated applied force as input tothe application. The conductive element can be one of a finger of a userand a stylist. The self-capacitance associated with the electrode can bea capacitance as measured between the electrode and the ground plane.The at least one controller and the touch-sensitive input device can becollectively configured to determine, for each of the at least twoelectrodes, a mutual capacitance between the at least two electrodes.Calculating a force applied by the contact of the conductive elementwith the top surface of the cover glass can be further based on thedetermined mutual capacitance between the at least two electrodes.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram that illustrates an example computing device thatincludes touch-sensitive input devices, such as a touchscreen displaydevice and a touchpad.

FIG. 2 is a diagram that illustrates an example computing device thatincludes a touchscreen display device.

FIG. 3 is a diagram that illustrates an example implementation of atouch-sensitive input device.

FIG. 4 is a diagram that illustrates an example implementation of thetouch-sensitive input device when a force is applied by a user at apoint of contact.

FIG. 5 is a block diagram illustrating example modules included in acomputing device.

FIG. 6 is a flowchart that illustrates a method for identifying contactwith a surface of a touch-sensitive input device.

FIG. 7 shows an example of a computer device and a mobile computerdevice that can be used to implement the techniques described here.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DETAILED DESCRIPTION

A trackpad, a touchpad, and a touchscreen display device can beconsidered (referred to as) touch-sensitive input devices. One or moretouch-sensitive input devices can be included in a computing device.Each touch-sensitive input device can include a tactile sensing surface(e.g., a capacitive sensing surface, a resistive and capacitive sensingsurface). The touch-sensitive input device can be configured tofacilitate interaction by a user with a graphical user interface (GUI)displayed on a display device (e.g., a touchscreen display device)included in the computing device. In some implementations, thetouch-sensitive input device can detect a position and a motion of oneor more fingers of a user as the one or more fingers contact the tactilesensing surface of the touch-sensitive input device.

In some cases, the computing device can use the detected motion and/orthe detected position of the one or more fingers of the user with thetactile sensing surface of the touch-sensitive input device to determinea relative position on the display device (and in relation to the GUIdisplayed on the display device) that corresponds with the position ofthe one or more fingers of the user. In some cases, the computing devicecan use the detected motion and/or the detected position of the one ormore fingers of the user with the tactile sensing surface of thetouch-sensitive input device to affect movement of a cursor displayed inthe GUI. In some cases, the computing device can use a detected motionand/or a detected position of the one or more fingers of the user withthe tactile sensing surface in combination with a detected force exertedby the one or more fingers of the user on the tactile sensing surface ofthe touch-sensitive input device when controlling a position and/ormovement of a cursor displayed in the GUI.

In some implementations, a contact with the touch-sensitive input devicecan be provided by a stylus. A user can use and manipulate the stylus asthey would one or more fingers of the user when contacting the tactilesensing surface of the touch-sensitive input device.

Computing devices can include one or more touch-sensitive input devicesthat include a touch-sensitive surface (e.g., a touchscreen, a trackpad,a touchpad). The touch-sensitive surface can determine when a user istouching (making contact with) the surface. In some implementations, thecontact can be one or more fingers of a user that are touching (are incontact with) the touch-sensitive surface. In some implementations, thecontact can be made by a stylus as manipulated and used by a user on thetouch-sensitive surface of the touch-sensitive input device. Asdescribed herein, processes and methods for determining a position, alocation, and/or a force of a detected contact with a touch-sensitivesurface can be the same for one or more fingers of a user touching orcontacting the touch-sensitive surface and for a stylus contacting thetouch-sensitive surface.

In addition to determining when a user is making contact with thetouch-sensitive surface of the touch-sensitive input device, thecomputing device can determine the location of the contact on thesurface of the touch-sensitive input device (e.g., a location of acontact of a finger of the user on the surface of the touch-sensitiveinput device). In addition, in some cases, the computing device canmeasure a force exerted by the finger of the user while touching(contacting) the touch-sensitive surface of the touch-sensitive inputdevice at the determined location.

In some implementations, a touch-sensitive input device can include oneor more force sensors that can be used to measure a force exerted by theuser (exerted by one or more fingers of the user) when contacting thesurface of the touch-sensitive input device. In some cases, forcesensors may be expensive and may be difficult to integrate into atouch-sensitive input device included in a computing device that mayhave size and thickness limitations (e.g., a mobile phone, a tabletdevice).

In some implementations, a touch-sensitive input device can include acapacitive touch sensor that a computing device can use to determinewhen a user is contacting the surface of the touch-sensitive inputdevice (e.g., when one or more fingers of a user are touching(contacting) the surface of the touch-sensitive input device). Inaddition, in some cases, the computing device can use the capacitivetouch sensor to calculate an estimate of a force applied by the user tothe surface of the touch-sensitive input device (e.g., a force appliedby (exerted by) one or more fingers of the user when contacting(touching) the surface of the touch-sensitive input device). In doingso, the computing device may not need any additional components and/orinstrumentation to measure the force exerted (applied) by the user(e.g., one or more fingers of the user) when touching (contacting) thetouch-sensitive surface of the touch-sensitive input device.

For example, in some implementations, a computing device can include atouchscreen display device that can be considered a touch-sensitiveinput device. The touchscreen display device can include a plurality oflayers that can be stacked and adhered to each other. A first layer (atthe top of the stack of layers) can be a cover glass. The cover glasscan be flexible, bending when a force is applied to a surface of thecover glass. A touch sensor (e.g., a capacitive touch sensor) can beadhered to a bottom surface of the cover glass. The cover glass andtouch sensor can be considered a glass-plus-sensor module. Theglass-plus-sensor module can be adhered to (laminated to) a displaydevice (e.g., a Liquid Crystal Display (LCD), an organic light-emittingdiode (OLED)) using an optically clear adhesive (OCA). The displaydevice can include a ground plane and can be referred to as the displaydevice-plus-ground plane. In an example where the display device is anLCD, the display device and ground plane can be referred to as theLCD/GND plane.

When a force is applied to the touchscreen display device, the coverglass can bend towards the display device-plus-ground plane (e.g., theLCD/GND plane). The degree to which the cover glass can bend can be afunction of the applied force. Because the touch sensor (e.g., acapacitive touch sensor) is physically adhered to (connected to) thecover glass, it follows that electrodes included in the touch sensor arealso physically adhered to (connected to) the cover glass and, as such,will bend and be displaced based on the applied force. Theself-capacitance of each electrode can vary as a function of thedeformation of the cover glass, which is based on the applied force tothe cover glass. In some implementations, an estimate of the appliedforce to a touchscreen display device can be estimated by measuring achange in a self-capacitance of the electrodes included in the touchsensor. When estimating the applied force based on the change in aself-capacitance of the electrodes, the effect of a finger-coupledcapacitance can be compensated.

In some implementations, only the changes in the self-capacitances ofelectrodes located farthest away from the determined location of thecontact of a finger of a user on the surface of the touchscreen displaydevice are considered when estimating the applied force. The electrodeslocated farthest away from the determined location of the contact of thefinger of the user on the surface of the touchscreen display device areused because the effect of the finger-coupled capacitance decaysexponentially as the distance between an electrode and a location ofcontact of the finger of the user on the surface of the touchscreenincreases. In some implementations, a change in mutual capacitancebetween adjacent electrodes at the determined location of the contact ofthe finger of the user on the surface of the touchscreen display devicecan be used to estimate a finger-coupled capacitance. The computingdevice can use the determined finger-coupled capacitance to calculateand estimate the applied force.

FIG. 1 is a diagram that illustrates an example computing device 102that includes touch-sensitive input devices, such as a touchscreendisplay device 120 and a touchpad 114. As included herein, the termstrackpad, trackpad device, trackpad apparatus, touchpad, touchpad deviceand touchpad apparatus may be used interchangeably. In addition, asincluded herein, the terms touchscreen, touchscreen display, touchscreendisplay device, and touchscreen apparatus may be used interchangeably.

The touchscreen display device 120 and touchpad 114 can bepressure-sensitive, touch-sensitive input devices, such as thosedescribed herein. A user can interact with the touchscreen displaydevice 120 and the touchpad 114 to facilitate interaction with thecomputing device 102. A user can interact with the touchscreen displaydevice 120 and the touchpad 114 to facilitate interaction with anapplication executing on the computing device 102. For example, theapplication can provide (display) a graphical user interface (GUI) onthe touchscreen display device 120. A user can interact with thetouchscreen display device 120 and/or the touchpad 114 to control cursormovements in the GUI displayed on the touchscreen display device 120.

In the example shown in FIG. 1, the computing device 102 includes a lidportion 104 and a base portion 106. The base portion 106 includes aninput area 122. The input area 122 includes a keyboard 108, the touchpad114, a pointer button 110, and mouse buttons 112 a-d. The lid portion104 includes the touchscreen display device 120 that is part of (housedwithin/mounted on) the lid portion 104 of the computing device 102.

In the example shown in FIG. 1, the computing device 102 may take theform of a laptop computer, a notebook computer or a netbook computer. Insome implementations, the computing device 102 may be a tablet computer(as shown in FIG. 2), a desktop computer, a server computer, or a numberof other computing or electronics devices. For example, implementationsof a desktop computer and/or implementations of a server computer maynot include a touchpad (e.g., the touchpad 114) as part of a computingdevice. In these implementations, a touchpad can be included in apressure-sensitive, touch-sensitive trackpad apparatus external to (andconnected to) the computing device. In addition or in the alternative,for example, implementations of a desktop computer and/orimplementations of a server computer may not include a touchscreen(e.g., the touchscreen display device 120) as part of a computingdevice. In these implementations, a touchscreen can be included in adisplay device that is external to (and connected to) the computingdevice.

For example, the computing device 102 can be considered in a laptop modeof operation. In a laptop operating mode, a user of the computing device102 can interact with the keyboard 108, the touchpad 114, the pointerbutton 110, and the mouse buttons 112 a-d included in the input area 122while viewing/interacting with content rendered on the touchscreendisplay device 120. The touchscreen display device 120 (e.g., inconjunction with other elements of the computing device 102) can render(display) a GUI that allows a user to interact with the computing device102 to, for example, execute (run) applications and programs, surf theInternet or World Wide Web, or draft documents using a word processingapplication. In some cases, a user of the computing device 102 caninteract with the GUI using the keyboard 108 alone or in conjunctionwith the pointer button 110 and/or the mouse buttons 112 a-d to entertext or commands into an application running (executing) on thecomputing device 102. The keyboard 108 can take a number of forms, andthe particular arrangement of the keyboard 108 can depend on theparticular implementation.

In some cases, a user can also interact with the GUI using the touchpad114 alone or in conjunction with the pointer button 110 and/or the mousebuttons 112 a-d. For example, the GUI interaction can move a cursor,select objects, launch programs from icons, and/or move objects in theGUI. The particular configuration of the touchpad 114 can vary dependenton a specific implementation of the computing device 102. In someimplementations, a trackpad can be larger than the touchpad 114. In someimplementations, a trackpad can be smaller than the touchpad 114. Insome implementations, a trackpad can be disposed in (replace and/orinclude) the area that includes the keyboard 108. In theseimplementations, a trackpad can be disposed over, or included in, theinput area 122 (e.g., a top surface of the base portion 106,substantially the entire input area 122) included in the base portion106 of the computing device 102. The input area 122 can be the same size(e.g., area (e.g., surface area), width and length) or substantially thesame size as the base portion 106, thus functioning as a touch-sensitivesurface (e.g., a touch-sensitive trackpad) that covers (is incorporatedin) the base portion 106 of the computing device 102.

FIG. 2 is a diagram that illustrates an example computing device 202that includes a touchscreen display device 220. The touchscreen displaydevice 220 can be configured to operate as a display device that can,for example, display a GUI. The touchscreen display device 220 can beconfigured to operate as a pressure-sensitive, touch-sensitive inputdevice. A user can interact with the touchscreen display device 220 inthe same manner as interactions with touchscreen display devicesdescribed herein, in order to provide input to the computing device 202.For example, the computing device 202 can be a tablet computer, asmartphone, a personal digital assistant, a mobile phone, or anothertype of mobile computing device.

FIG. 3 is a diagram that illustrates an example implementation of atouch-sensitive input device 300. In some implementations, thetouch-sensitive input device 300 can be configured to determine (sense)a force applied by a user when contacting a surface 302 of thetouch-sensitive input device 300. For example, referring to FIG. 1, thetouch-sensitive input device 300 can be (can be included in) thetouchscreen display device 120. For example, referring to FIG. 1, thetouch-sensitive input device 300 can be (can be included in) thetouchpad 114. In this example, the touch-sensitive input device 300 asincluded in the touchpad 114 may not include a display device 320. Forexample, referring to FIG. 2, the touch-sensitive input device 300 canbe (can be included in) the touchscreen display device 220.

The touch-sensitive input device 300 can detect (determine) when a useris touching (making contact with) the surface 302 (e.g., one or morefingers of the user are in contact with the surface 302). In addition todetecting when a user is making contact with the surface 302 of thetouch-sensitive input device 300, a location of the contact on thesurface 302 of the touch-sensitive input device 300 (e.g., a location ofa contact of a finger of the user on the surface 302 of thetouch-sensitive input device 300) can be determined. In addition, insome cases, a force exerted by a finger of a user while touching(contacting) the surface 302 of the touch-sensitive input device 300 atthe determined location can be measured.

In some implementations, the touch-sensitive input device 300 caninclude circuitry (e.g., electronic components, controllers, drivers,memory) that can be configured to detect when a user is touching (makingcontact with) the surface 302, determine a location of the detectedcontact on the surface 302, and determine (measure) a force exerted by afinger of a user while touching (contacting) the surface 302. In someimplementations, a computing device that includes the touch-sensitiveinput device 300 can include circuitry (e.g., electronic components,controllers, drivers, memory) for use with the touch-sensitive inputdevice 300. For example, the circuitry can be configured to detect whena user is touching (making contact with) the surface 302, determine alocation of the detected contact on the surface 302, and determine(measure) a force exerted by a finger of a user while touching(contacting) the surface 302. In some cases, the circuitry for use withthe touch-sensitive input device 300 can be the same circuitry used forother functions of the computing device.

Referring to FIG. 3, the touch-sensitive input device 300 includes aplurality of layers that are adhered to (attached to) one another toform a stack. A cover glass 304 comprises a top layer of the stack. Thecover glass 304 includes a cover glass top surface 306 a and a coverglass bottom surface 306 b. In the example shown in FIG. 3, the coverglass top surface 306 a can be the surface 302. One or more electrodes308 a-f are attached (e.g., adhered) to the cover glass bottom surface306 b. The cover glass 304 including the one or more attached electrodes308 a-f can be referred to, in general, as a glass-plus-sensor module310. The glass-plus-sensor module 310 can be laminated to (e.g.,attached to, adhered to) the display device 320. In implementationswhere the touch-sensitive input device 300 is included in a trackpad(e.g., the touchpad 114 as shown in FIG. 1), the glass-plus-sensormodule 310 can be laminated to (e.g., attached to, adhered to) a groundplane 322.

In the example shown in FIG. 3, without any force applied to the surface302 of the touch-sensitive input device 300, a height 334 of the coverglass 304 is essentially the same across a length 332 of the cover glass304.

The display device 320 includes a display device top surface 324 a and adisplay device bottom surface 324 b. The display device bottom surface324 b includes (is attached to) the ground plane 322. The display device320 and the attached ground plane 322 can be referred to, in general, asa display device-plus-ground plane 314. In some implementations, thedisplay device 320 can include, but is not limited to, a Liquid CrystalDisplay (LCD) and an organic light-emitting diode (OLED). In an examplewhere the display device 320 is an LCD, the display device-plus-groundplane 314 can be referred to as the LCD/GND plane.

FIG. 3 illustrates an example implementation of a touch-sensitive inputdevice (e.g., the touch-sensitive input device 300) configured todetermine (sense) a force applied by a user when contacting a surface ofthe touch-sensitive input device. The touch-sensitive input device 300includes a plurality of layers, described herein, that can be referredto as a touch sensor stack. In some cases, a touch-sensitive inputdevice configured to determine (sense) a force applied by a user whencontacting a surface of the touch-sensitive input device can beimplemented using other touch sensor stacks. The other touch sensorstacks can include, but are not limited to, a glass-film-film (GFF)stack, a one glass solution (OGS) stack, a G1F stack, a GF1 stack, a GF2stack, a GG stack, an on-cell stack, a true in-cell stack, and a hybridin-cell stack.

For example a sensor film can be transparent and conductive. Forexample, a GFF stack includes two sensor films laminated to (e.g.,attached to, adhered to) glass. For example, a OGS stack includes asingle sensor film laminated to (e.g., attached to, adhered to) glass.For example, a G1F stack includes a single sensor film with a sensorlayer included on one side of the film where the single sensor film islaminated to (e.g., attached to, adhered to) glass. A GF1 stack includesa single sensor film with two sensor layers included on one side of thefilm where the single sensor film is laminated to (e.g., attached to,adhered to) glass. A GF2 stack includes a single sensor film with asensor layer included on each side of the film where the single sensorfilm is laminated to (e.g., attached to, adhered to) glass. For example,a GG stack includes a cover glass and a single sensor glass. Forexample, an on-cell stack can include a separate layer for touch“receive” (RX) and a separate layer for touch “transmit” (TX) functionswhere each of the separate layers are placed/located on top of (above) acolor filter and a display device. For example, an in-cell stack caninclude a separate layer for touch “receive” (RX) and a separate layerfor touch “transmit” (TX) functions where at least one of the separatelayers is placed/located under (below) a color filter and on top of(above) a display device. For example, in a true (one sided) in-cellstack both the touch RX layer and the touch TX layer are placed/locatedunder (below) a color filter and on top of (above) a display device. Forexample, in a hybrid (two sided) in-cell stack only one layer (e.g., thetouch TX layer) is placed/located under (below) a color filter and ontop of (above) a display device. The use of each touch sensor stack in atouch-sensitive input device can include appropriate changes to themeasurement techniques discussed herein for the touch sensor stackincluded in the touch-sensitive input device 300.

In some implementations, a cover glass can be replaced with a touchsurface that includes a plastic or polymers (e.g., a Poly(methylmethacrylate) (PMMA)). In some implementations, a plastic or polymertouch surface can be an integral part of a display stack thatincorporates a display device. For example, the plastic or polymer touchsurface can be considered a top polarizer for the display device.

Referring to FIG. 3, the glass-plus-sensor module 310 can be laminatedto (e.g., attached to, adhered to) the display device-plus-ground plane314 using an optically clear adhesive (e.g., shown in general as anoptically clear adhesive layer (OCA) layer 312). Specifically, the coverglass bottom surface 306 b of the glass-plus-sensor module 310 (thatincludes the attached one or more electrodes 308 a-f) can be laminatedto (e.g., attached to, adhered to) the display device top surface 324 a(which is essentially a top surface of the display device-plus-groundplane 314). An electrode (e.g., the electrode 308 a-f) can be located(placed at) a respective distance 326 a-f from the ground plane 322. TheOCA layer 312 can have a thickness t_(oca) 328.

A mutual capacitance between adjacent electrodes can be represented bycapacitors 330 a-e. The mutual capacitance can be established byelectric fields that propagate through the cover glass 304 and the OCAlayer 312 due to a potential difference between adjacent electrodes.

In some implementations, the touch-sensitive input device 300 can beconfigured to detect (determine) when a user is touching and/orotherwise making contact with the surface 302. For example, thetouch-sensitive input device 300 can be configured to detect (determine)when one or more fingers of the user are in contact with the surface 302by monitoring a change in a self-capacitance (represented by capacitors316 a-f) of each of the electrodes 308 a-f, respectively. Referring tothe example implementation of the touch-sensitive input device 300 shownin FIG. 3, a measured value for a self-capacitance (e.g., the measuredvalue of the capacitance of the capacitor 316 a) of an associatedelectrode (e.g., the electrode 308 a) can be primarily a measuredcapacitance (e.g., the value of the representative capacitor 316 a)between the electrode (e.g., the electrode 308 a) and a ground plane(e.g., the ground plane 322). In addition, the measured value of aself-capacitance (e.g., the measured value of the capacitance of thecapacitor 316 a) of an associated electrode (e.g., the electrode 308 a)can be a function of (associated with) a size of the electrode (e.g., asize of the electrode 308 a), a dielectric constant associated with theoptically clear adhesive included in the OCA layer 312, and a distancebetween an electrode and the ground plane (e.g., the distance 326 a).

For example, it can be assumed that the thickness t_(oca) 328 of the OCAlayer 312 can vary based on an applied pressure to the surface 302 ofthe touch-sensitive input device 300. The variation in the thicknesst_(oca) 328 of the OCA layer 312 can effect a measured value of aself-capacitance of an electrode. This relationship can be representedby Equation 1.

C _(n) ∝t _(oca),  Equation 1:

where C_(n) is a measured capacitance of an associated electrode and n=1to n=6 (referring to FIG. 3).

FIG. 4 is a diagram that illustrates an example implementation of thetouch-sensitive input device 300 when a force (shown by the downwardarrow 440) is applied by a user (e.g., one or more fingers of a user, astylus controlled by a user) at a point of contact 434. Thetouch-sensitive input device 300 can detect (determine) when a user istouching (making contact with) the surface 302 (e.g., a finger of theuser can contact (touch) the surface 302 at the point of contact 434, atip or point of a stylus can contact (touch) the surface 302 at thepoint of contact 434). The contact and applied force can be shown ingeneral by a conductive element 432 contacting (touching) the surface302 of the touch-sensitive input device 300 at the point of contact 434.In addition to detecting when a user is making contact with the surface302 of the touch-sensitive input device 300, a location of the contacton the surface 302 of the touch-sensitive input device 300 (e.g., thepoint of contact 434) can be determined.

In addition, in some cases, a force exerted by a finger of a user (or bya stylus) while touching (contacting) the surface 302 of thetouch-sensitive input device 300 at the determined location can bemeasured. As shown in FIG. 4, for example, a finger of the user cantouch (make contact with) the surface 302 at the point of contact 434and press the cover glass 304 (which can be flexible) in a downwarddirection as shown by arrow 440. The magnitude of the downward appliedforce can cause the cover glass 304 and the glass-plus-sensor module 310to bend towards the display device 320 (towards the displaydevice-plus-ground plane 314). The magnitude of the bending can be afunction of one or more of the magnitude of the applied force, thematerial properties of the cover glass 304 (e.g., how easily the coverglass 304 can bend, how much force is needed to bend the cover glass 304a particular amount), the material properties of the OCA, and thelocation of the point of contact on the surface 302 of thetouch-sensitive input device 300.

The bending of the cover glass 304 changes the geometry of the coverglass 304 from having the height 334 that was essentially the same alongthe length 332 of the cover glass 304 when no pressure was applied tothe surface 302 (e.g., as shown in FIG. 3), to having multiple differentheights (e.g., heights 440 a-f) along the length 332 of the cover glass304 when a force is applied at on the surface 302 at the point ofcontact 434. The bending of the cover glass 304 because of the force(pressure) applied to the cover glass 304 at the point of contact 434changes a geometry of the cover glass 304. A change in the geometry ofthe cover glass 304 along the length 332 of the cover glass 304 candecrease a distance (e.g., distances 426 a-f) from one or more of theelectrodes 308 a-f to the ground plane 322. For example, referring toFIG. 3 and FIG. 4, a distance 426 c of the electrode 308 c from theground plane 322 is less than a distance 326 c of the electrode 308 cfrom the ground plane 322. For example, a distance 426 a of theelectrode 308 a from the ground plane 322 is substantially the same as adistance 326 a of the electrode 308 a from the ground plane 322.

In general, a distance from an electrode to the ground plane 322decreases the closer an electrode is to the point of contact 434. Thefarther from the location of the point of contact an electrode islocated, the larger (greater) the distance between the electrode and theground plane 322. Equation 2 can represent this relationship.

Δt _(oca) ∝F,  Equation 2:

where Δt_(oca) is a change in the thickness of the OCA and F is theapplied force. In some implementation, the applied force F can change athickness t of any combination of a heterogeneous stack of materials,the thickness t being a distance between an electrode and a referenceground against which a capacitance of the electrode is being measured.

In addition, the existence of the contact of the conductive element 432(e.g., a finger of a user, a stylus) with the surface 302 of thetouch-sensitive input device 300 introduces additional capacitances(e.g., represented by capacitors 436 a-f) between the electrodes 308a-f, respectively, and the conductive element 432. Each of thecapacitors 436 a-f represent capacitances between the electrodes 308a-f, respectively, and a ground 442 provided by (through) the conductiveelement 432 at the point of contact 434. In the example shown in FIG. 4,a self-capacitance of each of the electrodes 308 a-f can be a functionof (e.g., the sum of) the capacitors 416 a-f and the capacitors 436 a-f.In some implementations, an estimate of an applied force by theconductive element 432 at the point of contact 434 can be calculatedusing the additional capacitances (e.g., represented by capacitors 436a-f) between the electrodes 308 a-f.

In a first implementation, when calculating an estimate of the forceapplied by the conductive element 432 at the point of contact 434, thechanges in the self-capacitance of electrodes located at distances thatare farther from the point of contact 434 can be considered and changesin the self-capacitance of electrodes located at distances that arecloser to the point of contact 434 can be ignored because the effect onthe self-capacitance of an electrode due to the presence of theconductive element 432 at the point of contact 434 decreasesexponentially the further away from the point of contact 434 theelectrode is located. For example, referring to FIG. 4, theself-capacitance of electrodes 308 a, 308 b, 308 e, and 308 f can beused to calculate an estimate of the force applied by the conductiveelement 432 at the point of contact 434.

When using the first implementation to calculate an estimate of theforce applied by the conductive element 432 at the point of contact 434,the bending of the cover glass 304 due to the force applied by theconductive element 432 at the point of contact 434 may not besignificant enough to result in the additional capacitances (e.g.,represented by capacitors 436 a-f) between the electrodes 308 a-f,respectively, and the conductive element 432 having a measurable impacton the self-capacitances of each of the electrodes 308 a-f.

In a second implementation, a change in a mutual capacitance betweenadjacent electrodes (e.g., represented by capacitors 430 a-e) can becalculated and used to estimate a capacitance introduced by theconductive element 432 at the point of contact 434. The capacitanceintroduced by the conductive element 432 at the point of contact 434 canbe referred to as a contact-coupled capacitance. The change in themutual capacitance is the difference between a mutual capacitancebetween two adjacent electrodes when no contact is detected with thesurface 302 of the touch-sensitive input device 300 and a mutualcapacitance between the two adjacent electrodes when contact is detectedwith the surface 302 of the touch-sensitive input device 300. The change(difference) in the mutual capacitance between adjacent electrodes canbe used to estimate a capacitance between an electrode and theconductive element 432 at the point of contact 434. The estimatedcapacitance between the electrode and the conductive element 432 at thepoint of contact 434 can be used to calculate an estimate of the forceapplied by the conductive element 432 at the point of contact 434. Inthis second implementation, referring to FIG. 4, information provided byand obtained from all of the electrodes 308 a-f can be used incalculating an estimate of the force applied by the conductive element432 at the point of contact 434.

As described, changes in mutual capacitance between adjacent electrodesand changes in the self-capacitance of electrodes located at distancesthat are farther from a point of contact can be used when calculating anestimate of a force applied by a conductive element 432 at a point ofcontact on a surface of a touch-sensitive input device. Equation 3 showsa representation of a calculation for determining an estimate of a forceapplied by a conductive element 432 at the point of contact 434 on thesurface 302 of the touch-sensitive input device 300.

{circumflex over (F)}=f(C _(n) ,C′ _(n) ,ΔC _(m)),  Equation 3:

where, referring to FIG. 3 and FIG. 4, n=1-6, and m=1-5, and C_(n) isthe self-capacitance (represented by capacitors 316 a-f (C₁ to C₆,respectively)) of each of the electrodes 308 a-f when no contact is madewith the surface 302 of the touch-sensitive input device 300, C′_(n) isthe self-capacitance (represented by capacitors 416 a-f (C′₁ to C′₆,respectively)) of each of the electrodes 308 a-f when contact isdetected with the surface 302 of the touch-sensitive input device 300 atthe point contact 434, and ΔC_(m)=|C_(m)-C′_(m)| is the change in themutual capacitance between two electrodes. Referring to FIG. 3,capacitors 330 a-e (C_(M1) to C_(M5), respectively) are representativeof a mutual capacitance between adjacent electrodes 308 a-f when nocontact is detected with the surface 302 of the touch-sensitive inputdevice 300. Referring to FIG. 4, capacitors 430 a-e (C′_(M1) to C′_(M5),respectively) are representative of a mutual capacitance betweenadjacent electrodes 308 a-f when contact is detected with the surface302 of the touch-sensitive input device 300 at the point of contact 434.

In some implementations, a contact of a conductive element 432 (e.g., afinger of a user, a stylus) with the surface 302 of the touch-sensitiveinput device 300 can be detected when a measured capacitance for thecontact meets or exceeds a particular threshold value. The use of athreshold value can eliminate possible false contact detections.

Referring to FIG. 4, the farther away from the point of contact 434 acapacitance is measured, the smaller the measured value of thecapacitance will be. For example, the value of the measured capacitancerepresented by capacitor 436 c will be greater than the value of themeasured capacitance represented by capacitor 436 b. In another example,the value of the measured capacitance represented by capacitor 436 dwill be greater than the value of the measured capacitance representedby capacitor 436 e.

In the example shown in FIG. 4, the point of contact 434 is located inapproximately a center of the touch-sensitive input device 300. In somecases, the point of contact can be located closer to a first end 438 aof the touch-sensitive input device 300. In some cases, the point ofcontact can be located closer to a second end 438 b of thetouch-sensitive input device 300. The closer the point of contact is toan end of the touch-sensitive input device 300, the less bend the coverglass 304 may exhibit.

FIG. 5 is a block diagram illustrating example modules included in acomputing device 500. For example, the computing device 500 can be thecomputing device 102 as shown in FIG. 1 or the computing device 202 asshown in FIG. 2. In the example of FIG. 5, the computing device 500includes a processor 520 and a memory 530. In some implementations, theprocessor 520 can be at least one controller or other type ofsemiconductor computing device. The computing device 500 can beoperatively coupled to input devices 540. The computing device 500 canbe operatively coupled to a touchscreen 550. In some implementations,the touchscreen 550 can be included in (can be part of and integratedwith) the computing device 500. In some implementations, one or more (orall of) the input devices 540 can be included in (can be part of andintegrated with) the computing device 500.

The computing device 500 can receive input data from one or more of theinput devices 540. A user of the computing device 500 may interact withone or more of the input devices 540 to provide input to an applicationrunning on the computing device 500. For example, the processor 520 canexecute the application that may be stored in the memory 530. Theapplication can display a user interface on the touchscreen 550. Theuser can interact with one or more of the input devices 540 in order tointeract with and/or provide input to the application. Referring also toFIG. 1, the input devices 540 can include, but are not limited to, akeyboard 552 (e.g., the keyboard 108), a pointing device 556 (e.g., thepointer button 110), and mouse buttons 558 (e.g., mouse buttons 118a-d). In some implementations, the touchscreen 550 (e.g., thetouchscreen display device 120) can be considered a display device andan input device.

In some implementations, each input device (e.g., input devices 552,554, 556, and 558) can be configured to include circuitry and logic toprocess a physical input received by the respective input device intodata that the input device can provide to the computing device 500. Forexample, the keyboard 552 can detect a user pressing the “a” key on thekeyboard and can provide the input of the letter “a” (e.g., a binaryrepresentation of the letter “a”) to the computing device 500. Forexample, the pointing device 556 and/or the mouse buttons 558 can detectuser interactions and contact and can provide data representative of theinteractions to the computing device 500 for input to an applicationrunning on the computing device 500.

The trackpad 554 includes a trackpad controller 560, a pressuredetection module 562, and a location detection module 564. Referring toFIG. 1, the trackpad 554 can operate in a manner similar to theoperation of the touchpad 114 and the touch-sensitive input device 300as disclosed herein. For example, the trackpad 554 can detect contactwith a surface of the trackpad 554 using the trackpad controller 560.The location detection module 564 can determine that the contact withthe surface of the trackpad 554 is at a particular area (e.g., x-ylocation, a point of contact) on the trackpad 554. The pressuredetection module 562 can determine (calculate using the trackpadcontroller 560) pressure (a force) at the area (e.g., x-y location, apoint of contact) on the trackpad 554 as input to an application runningon the computing device 500. The trackpad 554 can provide the determinedpoint of contact on the trackpad 554 and the calculated pressure of thecontact to the computing device 500. The computing device 500 canprovide the received location of the point of contact on the trackpad554 and the calculated pressure of the contact as input to anapplication running on the computing device 500.

The touchscreen 550 includes a touchscreen controller 570, a pressuredetection module 572, a location detection module 574, and a display576. Referring to FIG. 1, the touchscreen 550 can operate in a mannersimilar to the operation of the touchscreen display device 120 and thetouch-sensitive input device 300 as disclosed herein. For example, thetouchscreen 550 can detect contact with a surface of the touchscreen 550using the touchscreen controller 570. The location detection module 574can determine that the contact with the surface of the touchscreen 550is at a particular area (e.g., x-y location, a point of contact) on thetouchscreen 550. The pressure detection module 572 can determine(calculate using the touchscreen controller 570) pressure at the area(e.g., x-y location, a point of contact) on the touchscreen 550 as inputto an application running on the computing device 500. The display 576can provide (show) a graphical user interface (GUI) to a userinteracting with the touchscreen 550. For example, an applicationexecuting on the computing device 500 can display a GUI that allows theuser to enter and manipulate text and/or images in a document displayedby the application in the GUI. The touchscreen 550 can provide thedetermined point of contact on the touchscreen 550 and the calculatedpressure of the contact to the computing device 500. The computingdevice 500 can provide the received location of the point of contact onthe touchscreen 550 and the calculated pressure of the contact as inputto an application running on the computing device 500.

Though shown as separate devices in the example in FIG. 5, in someimplementations, for example when the touchscreen 550 and the inputdevices 540 are part of (integrated in) the computing device 500, thetouchscreen controller 570 and the trackpad controller 560 can be thesame device. In these implementations, in some cases, the processor 520can perform the function of one or both of the trackpad controller 560and the touchscreen controller 570, eliminating the need for thediscrete devices. In some implementations, for example when thetouchscreen 550 and the input devices 540 are part of (integrated in)the computing device 500, the pressure detection module 562 and thepressure detection module 572 may be the same module. In addition or inthe alternative, the location detection module 574 and the locationdetection module 564 may be the same module.

FIG. 6 is a flowchart that illustrates a method 600 for identifyingcontact with a surface of a touch-sensitive input device. In someimplementations, the systems, methods, and processes described hereincan implement the method 600. For example, the method 600 can bedescribed referring to FIGS. 1-5

Contact with a surface of a touch-sensitive input device is identifiedby a computing device (block 602). For example, referring to FIG. 4, thetouch-sensitive input device 300 can detect (determine or identify) whena user is touching (making contact with) the surface 302 of thetouch-sensitive input device 300. For example, a finger of the usercontacts (touches) the surface 302 at the point of contact 434. Inanother example, a tip or point of a stylus contacts (touches) thesurface 302 at the point of contact 434. The contact and applied forcecan be shown in general by a conductive element 432 contacting(touching) the surface 302 of the touch-sensitive input device 300 atthe point of contact 434.

A location of the contact on the surface of the touch-sensitive inputdevice is identified by the computing device (block 604). For example,in addition to detecting when a user is making contact with the surface302 of the touch-sensitive input device 300, a location of the contacton the surface 302 of the touch-sensitive input device 300 (e.g., thepoint of contact 434) can be identified or determined.

A change in a mutual capacitance between a first electrode and a secondelectrode included in a sensor module disposed below the surface of thetouch-sensitive input device is calculated (block 606). The firstelectrode can be adjacent to the second electrode. The first electrodeand the second electrode can be located approximate to the identifiedlocation of the contact on the surface of the touch-sensitive inputdevice. For example, referring to FIG. 3 and FIG. 4, the change in themutual capacitance can be the difference between the mutual capacitancebetween the first electrode and the second electrode when no contact isdetected with the surface 302 of the touch-sensitive input device 300(mutual capacitance 330 b) and a mutual capacitance between the firstelectrode and the second electrode when contact is detected with thesurface 302 of the touch-sensitive input device 300 (mutual capacitance430 b).

A contact-coupled capacitance based on the calculated change in a mutualcapacitance between the first electrode and the second electrode can beestimated (block 608). For example, referring to FIG. 3 and FIG. 4, achange (difference) in the mutual capacitance between the firstelectrode (e.g., electrode 308 b) and the second electrode (e.g.,electrode 308 c) can be used to estimate a capacitance between the firstelectrode and the conductive element 432 at the point of contact 434(e.g., the capacitor 436 b).

A force applied to the surface of the touch-sensitive input device atthe identified location can be calculated based on a change inself-capacitance of the first electrode and the second electrode andbased on the estimated contact-coupled capacitance (block 610). Forexample, equation 3 above shows a representation of a calculation fordetermining an estimate of a force applied by a conductive element 432at the point of contact 434 on the surface 302 of the touch-sensitiveinput device 300.

FIG. 7 shows an example of a generic computer device 700 and a genericmobile computer device 750, which may be used with the techniquesdescribed here. Computing device 700 is intended to represent variousforms of digital computers, such as laptops, desktops, workstations,personal digital assistants, servers, blade servers, mainframes, andother appropriate computers. Computing device 750 is intended torepresent various forms of mobile devices, such as personal digitalassistants, cellular telephones, smart phones, and other similarcomputing devices. The components shown here, their connections andrelationships, and their functions, are meant to be exemplary only, andare not meant to limit implementations of the inventions describedand/or claimed in this document.

Computing device 700 includes a processor 702, memory 704, a storagedevice 706, a high-speed interface 708 connecting to memory 704 andhigh-speed expansion ports 710, and a low speed interface 712 connectingto low speed bus 714 and storage device 706. Each of the components 702,704, 706, 708, 710, and 712, are interconnected using various busses,and may be mounted on a common motherboard or in other manners asappropriate. The processor 702 can process instructions for executionwithin the computing device 700, including instructions stored in thememory 704 or on the storage device 706 to display graphical informationfor a GUI on an external input/output device, such as display 716coupled to high speed interface 708. In other implementations, multipleprocessors and/or multiple buses may be used, as appropriate, along withmultiple memories and types of memory. Also, multiple computing devices700 may be connected, with each device providing portions of thenecessary operations (e.g., as a server bank, a group of blade servers,or a multi-processor system).

The memory 704 stores information within the computing device 700. Inone implementation, the memory 704 is a volatile memory unit or units.In another implementation, the memory 704 is a non-volatile memory unitor units. The memory 704 may also be another form of computer-readablemedium, such as a magnetic or optical disk.

The storage device 706 is capable of providing mass storage for thecomputing device 700. In one implementation, the storage device 706 maybe or contain a computer-readable medium, such as a floppy disk device,a hard disk device, an optical disk device, or a tape device, a flashmemory or other similar solid state memory device, or an array ofdevices, including devices in a storage area network or otherconfigurations. A computer program product can be tangibly embodied inan information carrier. The computer program product may also containinstructions that, when executed, perform one or more methods, such asthose described above. The information carrier is a computer- ormachine-readable medium, such as the memory 704, the storage device 706,or memory on processor 702.

The high speed controller 708 manages bandwidth-intensive operations forthe computing device 700, while the low speed controller 712 manageslower bandwidth-intensive operations. Such allocation of functions isexemplary only. In one implementation, the high-speed controller 708 iscoupled to memory 704, display 716 (e.g., through a graphics processoror accelerator), and to high-speed expansion ports 710, which may acceptvarious expansion cards (not shown). In the implementation, low-speedcontroller 712 is coupled to storage device 706 and low-speed expansionport 714. The low-speed expansion port, which may include variouscommunication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet)may be coupled to one or more input/output devices, such as a keyboard,a pointing device, a scanner, or a networking device such as a switch orrouter, e.g., through a network adapter.

The computing device 700 may be implemented in a number of differentforms, as shown in the figure. For example, it may be implemented as astandard server 720, or multiple times in a group of such servers. Itmay also be implemented as part of a rack server system 724. Inaddition, it may be implemented in a personal computer such as a laptopcomputer 722. Alternatively, components from computing device 700 may becombined with other components in a mobile device (not shown), such asdevice 750. Each of such devices may contain one or more of computingdevice 700, 750, and an entire system may be made up of multiplecomputing devices 700, 750 communicating with each other.

Computing device 750 includes a processor 752, memory 764, aninput/output device such as a display 754, a communication interface766, and a transceiver 768, among other components. The device 750 mayalso be provided with a storage device, such as a microdrive or otherdevice, to provide additional storage. Each of the components 750, 752,764, 754, 766, and 768, are interconnected using various buses, andseveral of the components may be mounted on a common motherboard or inother manners as appropriate.

The processor 752 can execute instructions within the computing device750, including instructions stored in the memory 764. The processor maybe implemented as a chipset of chips that include separate and multipleanalog and digital processors. The processor may provide, for example,for coordination of the other components of the device 750, such ascontrol of user interfaces, applications run by device 750, and wirelesscommunication by device 750.

Processor 752 may communicate with a user through control interface 758and display interface 756 coupled to a display 754. The display 754 maybe, for example, a TFT LCD (Thin-Film-Transistor Liquid Crystal Display)or an OLED (Organic Light Emitting Diode) display, or other appropriatedisplay technology. The display interface 756 may comprise appropriatecircuitry for driving the display 754 to present graphical and otherinformation to a user. The control interface 758 may receive commandsfrom a user and convert them for submission to the processor 752. Inaddition, an external interface 762 may be provide in communication withprocessor 752, so as to enable near area communication of device 750with other devices. External interface 762 may provide, for example, forwired communication in some implementations, or for wirelesscommunication in other implementations, and multiple interfaces may alsobe used.

The memory 764 stores information within the computing device 750. Thememory 764 can be implemented as one or more of a computer-readablemedium or media, a volatile memory unit or units, or a non-volatilememory unit or units. Expansion memory 774 may also be provided andconnected to device 750 through expansion interface 772, which mayinclude, for example, a SIMM (Single In Line Memory Module) cardinterface. Such expansion memory 774 may provide extra storage space fordevice 750, or may also store applications or other information fordevice 750. Specifically, expansion memory 774 may include instructionsto carry out or supplement the processes described above, and mayinclude secure information also. Thus, for example, expansion memory 774may be provide as a security module for device 750, and may beprogrammed with instructions that permit secure use of device 750. Inaddition, secure applications may be provided via the SIMM cards, alongwith additional information, such as placing identifying information onthe SIMM card in a non-hackable manner.

The memory may include, for example, flash memory and/or NVRAM memory,as discussed below. In one implementation, a computer program product istangibly embodied in an information carrier. The computer programproduct contains instructions that, when executed, perform one or moremethods, such as those described above. The information carrier is acomputer- or machine-readable medium, such as the memory 764, expansionmemory 774, or memory on processor 752, that may be received, forexample, over transceiver 768 or external interface 762.

Device 750 may communicate wirelessly through communication interface766, which may include digital signal processing circuitry wherenecessary. Communication interface 766 may provide for communicationsunder various modes or protocols, such as GSM voice calls, SMS, EMS, orMMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others.Such communication may occur, for example, through radio-frequencytransceiver 768. In addition, short-range communication may occur, suchas using a Bluetooth, WiFi, or other such transceiver (not shown). Inaddition, GPS (Global Positioning System) receiver module 770 mayprovide additional navigation- and location-related wireless data todevice 750, which may be used as appropriate by applications running ondevice 750.

Device 750 may also communicate audibly using audio codec 760, which mayreceive spoken information from a user and convert it to usable digitalinformation. Audio codec 760 may likewise generate audible sound for auser, such as through a speaker, e.g., in a handset of device 750. Suchsound may include sound from voice telephone calls, may include recordedsound (e.g., voice messages, music files, etc.) and may also includesound generated by applications operating on device 750.

The computing device 750 may be implemented in a number of differentforms, as shown in the figure. For example, it may be implemented as acellular telephone 780. It may also be implemented as part of a smartphone 782, personal digital assistant, or other similar mobile device.

Various implementations of the systems and techniques described here canbe realized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, and/or combinations thereof.These various implementations can include implementation in one or morecomputer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

These computer programs (also known as programs, software, softwareapplications or code) include machine instructions for a programmableprocessor, and can be implemented in a high-level procedural and/orobject-oriented programming language, and/or in assembly/machinelanguage. As used herein, the terms “machine-readable medium”“computer-readable medium” refers to any computer program product,apparatus and/or device (e.g., magnetic discs, optical disks, memory,Programmable Logic Devices (PLDs)) used to provide machine instructionsand/or data to a programmable processor, including a machine-readablemedium that receives machine instructions as a machine-readable signal.The term “machine-readable signal” refers to any signal used to providemachine instructions and/or data to a programmable processor.

To provide for interaction with a user, the systems and techniquesdescribed here can be implemented on a computer having a display device(e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor)for displaying information to the user and a keyboard and a pointingdevice (e.g., a mouse or a trackball) by which the user can provideinput to the computer. Other kinds of devices can be used to provide forinteraction with a user as well; for example, feedback provided to theuser can be any form of sensory feedback (e.g., visual feedback,auditory feedback, or tactile feedback); and input from the user can bereceived in any form, including acoustic, speech, or tactile input.

The systems and techniques described here can be implemented in acomputing system that includes a back end component (e.g., as a dataserver), or that includes a middleware component (e.g., an applicationserver), or that includes a front end component (e.g., a client computerhaving a graphical user interface or a Web browser through which a usercan interact with an implementation of the systems and techniquesdescribed here), or any combination of such back end, middleware, orfront end components. The components of the system can be interconnectedby any form or medium of digital data communication (e.g., acommunication network). Examples of communication networks include alocal area network (“LAN”), a wide area network (“WAN”), and theInternet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

A number of embodiments have been described. Nevertheless, it will beunderstood that various modifications may be made without departing fromthe spirit and scope of the invention.

In addition, the logic flows depicted in the figures do not require theparticular order shown, or sequential order, to achieve desirableresults. In addition, other steps may be provided, or steps may beeliminated, from the described flows, and other components may be addedto, or removed from, the described systems. Accordingly, otherembodiments are within the scope of the following claims.

While certain features of the described implementations have beenillustrated as described herein, many modifications, substitutions,changes and equivalents will now occur to those skilled in the art. Itis, therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the scope of theimplementations. It should be understood that they have been presentedby way of example only, not limitation, and various changes in form anddetails may be made. Any portion of the apparatus and/or methodsdescribed herein may be combined in any combination, except mutuallyexclusive combinations. The implementations described herein can includevarious combinations and/or sub-combinations of the functions,components and/or features of the different implementations described.

What is claimed is:
 1. A method comprising: identifying, by a computingdevice, contact with a surface of a touch-sensitive input device;identifying, by the computing device, a location of the contact on thesurface of the touch-sensitive input device; calculating a change in amutual capacitance between a first electrode and a second electrodeincluded in a sensor module disposed below the surface of thetouch-sensitive input device, the first electrode being adjacent to thesecond electrode, the first electrode and the second electrode locatedapproximate to the identified location of the contact on the surface ofthe touch-sensitive input device; estimating a contact-coupledcapacitance based on the calculated change in a mutual capacitancebetween the first electrode and the second electrode; and calculating aforce applied to the surface of the touch-sensitive input device at theidentified location based on a change in self-capacitance of the firstelectrode and the second electrode and based on the estimatedcontact-coupled capacitance.
 2. The method of claim 1, furthercomprising: calculating a change in a mutual capacitance between a thirdelectrode and the second electrode included in the sensor module, thethird electrode being adjacent to the second electrode and locatedcloser to the identified location of the contact on the surface of thetouch-sensitive input device than the first electrode; whereinestimating a contact-coupled capacitance is further based on thecalculated change in a mutual capacitance between the third electrodeand the second electrode; and wherein calculating the applied force isfurther based on a change in self-capacitance of the third electrode. 3.The method of claim 1, wherein the touch-sensitive input device is atouchpad.
 4. The method of claim 1, wherein the touch-sensitive inputdevice is a touchscreen.
 5. The method of claim 4, wherein the surfaceof the touch-sensitive input device is a surface of a cover glass. 6.The method of claim 1, further comprising: providing the calculatedapplied force to an application executing on the computing device. 7.The method of claim 6, further comprising: controlling a function of theapplication based on a value of the calculated applied force.
 8. Themethod of claim 1, wherein the identified contact with the surface ofthe touch-sensitive input device is provided by a finger of a user ofthe computing device contacting the surface of the touch-sensitive inputdevice at the identified location.
 9. The method of claim 1, wherein theidentified contact with the surface of the touch-sensitive input deviceis provided by a stylus contacting the surface of the touch-sensitiveinput device at the identified location.
 10. A touch-sensitive inputdevice comprising: a glass-plus-sensor module including: a cover glassincluding a top surface and a bottom surface; and at least twoelectrodes attached to the bottom surface of the cover glass, the atleast two electrodes having an associated self-capacitance; an opticallyclear adhesive layer (OCA) layer; a display device having a top surfaceand a bottom surface; and a ground plane attached to the bottom surfaceof the display device; the OCA layer attaching the bottom surface of thecover glass to the top surface of the display device; and theglass-plus-sensor module bending towards the display device at a pointof contact of a conductive element with the top surface of the coverglass, the bending changing, for each of the at least two electrodes,the self-capacitance associated with the electrode, and a calculation ofa force applied by the contact of the conductive element with the topsurface of the cover glass being based on the change in self-capacitancefor each electrode.
 11. The touch-sensitive input device of claim 10,wherein the OCA layer has a thickness; and wherein the calculation of aforce applied by the contact of the conductive element with the topsurface of the cover glass is further based on the thickness of the OCAlayer.
 12. The touch-sensitive input device of claim 10, wherein theself-capacitance associated with the electrode is a capacitance asmeasured between the electrode and the ground plane.
 13. Thetouch-sensitive input device of claim 10, wherein the at least twoelectrodes are adjacent to one another; and wherein the calculation of aforce applied by the contact of the conductive element with the topsurface of the cover glass is further based on a mutual capacitancebetween the at least two electrodes.
 14. The touch-sensitive inputdevice of claim 10, wherein the conductive element is one of a finger ofa user and a stylist.
 15. A computing device comprising: at least onecontroller; and a touch-sensitive input device configured to facilitateinteraction by a user with a graphical user interface (GUI), thetouch-sensitive input device comprising: a glass-plus-sensor moduleincluding: a cover glass including a top surface and a bottom surface;and at least two electrodes attached to the bottom surface of the coverglass, the at least two electrodes having an associatedself-capacitance; a display device having a top surface and a bottomsurface, the computing device being configured to render the GUI on thedisplay device; an optically clear adhesive layer (OCA) layer attachingthe bottom surface of the cover glass to the top surface of the displaydevice; and a ground plane attached to the bottom surface of the displaydevice, wherein the at least one controller and the touch-sensitiveinput device are collectively configured to: detect contact of aconductive element with the top surface of the cover glass, and based onthe detected contact; determine, for each of the at least twoelectrodes, a self-capacitance associated with the electrode; andcalculate a force applied by the contact of the conductive element withthe top surface of the cover glass based on the determinedself-capacitance associated with each of the at least two electrodes.16. The computing device of claim 15, wherein the at least onecontroller is configured to: execute an application on the computingdevice; and provide the calculated applied force as input to theapplication.
 17. The computing device of claim 15, wherein theconductive element is one of a finger of a user and a stylist.
 18. Thecomputing device of claim 15, wherein the self-capacitance associatedwith the electrode is a capacitance as measured between the electrodeand the ground plane.
 19. The computing device of claim 15, wherein theat least one controller and the touch-sensitive input device arecollectively configured to determine, for each of the at least twoelectrodes, a mutual capacitance between the at least two electrodes.20. The computing device of claim 19, wherein calculating a forceapplied by the contact of the conductive element with the top surface ofthe cover glass is further based on the determined mutual capacitancebetween the at least two electrodes.